import 'package:flutter/material.dart';
import 'package:get/get.dart';

class AppInitData {
  GlobalKey<NavigatorState>? navigatorKey;

  GlobalKey<ScaffoldMessengerState>? scaffoldMessengerKey;
  Widget? home;
  Map<String, WidgetBuilder>? routes;
  String? initialRoute;
  RouteFactory? onGenerateRoute;
  InitialRouteListFactory? onGenerateInitialRoutes;
  RouteFactory? onUnknownRoute;
  List<NavigatorObserver>? navigatorObservers;
  TransitionBuilder? builder;
  late String title;
  GenerateAppTitle? onGenerateTitle;
  ThemeData? theme;
  ThemeData? darkTheme;
  late ThemeMode themeMode;
  CustomTransition? customTransition;
  Color? color;
  Map<String, Map<String, String>>? translationsKeys;
  Translations? translations;
  TextDirection? textDirection;
  Locale? locale;
  Locale? fallbackLocale;
  Iterable<LocalizationsDelegate<dynamic>>? localizationsDelegates;
  LocaleListResolutionCallback? localeListResolutionCallback;
  LocaleResolutionCallback? localeResolutionCallback;
  late Iterable<Locale> supportedLocales;
  late bool showPerformanceOverlay;
  late bool checkerboardRasterCacheImages;
  late bool checkerboardOffscreenLayers;
  late bool showSemanticsDebugger;
  late bool debugShowCheckedModeBanner;
  Map<LogicalKeySet, Intent>? shortcuts;
  ScrollBehavior? scrollBehavior;
  ThemeData? highContrastTheme;
  ThemeData? highContrastDarkTheme;
  Map<Type, Action<Intent>>? actions;
  late bool debugShowMaterialGrid;
  ValueChanged<Routing?>? routingCallback;
  Transition? defaultTransition;
  bool? opaqueRoute;
  VoidCallback? onInit;
  VoidCallback? onReady;
  VoidCallback? onDispose;
  bool? enableLog;
  LogWriterCallback? logWriterCallback;
  bool? popGesture;
  late SmartManagement smartManagement;
  Bindings? initialBinding;
  Duration? transitionDuration;
  bool? defaultGlobalState;
  List<GetPage>? getPages;
  GetPage? unknownRoute;
  RouteInformationProvider? routeInformationProvider;
  RouteInformationParser<Object>? routeInformationParser;
  RouterDelegate<Object>? routerDelegate;
  BackButtonDispatcher? backButtonDispatcher;
  late bool useInheritedMediaQuery;
}
